<?php

// +----------------------------------------------------------------------
// | Copyright (c) 2014 http://www.cencn.com All rights reserved.
// +----------------------------------------------------------------------
// | Author: 彦子谷  <278805354@qq.com> <http://www.xzqly.com>
// +----------------------------------------------------------------------

namespace Home\Service;
use Think\Model;
use Think\Exception;
class NotobjectService{

   public function __call($method, $args) {
        // 检查是否存在方法$method
        if (method_exists($this, $method)) {
            $before_method = 'before_' + $method;
            // 检查是否存在方法$before_method
            if (method_exists($this, $before_method)) {
                // 调用$before_method，检查其返回值，决定是否跳过函数执行
                if (call_user_func_array(array($this, $before_method), $args)) {
                    return call_user_func_array(array($this, $method), $args);
                }
            } else {
                // $before_method不存在，直接执行函数
                return call_user_func_array(array($this, $method), $args);
            }
        } else {
            throw new Exception("Exception:".L("METHOD_NOT_EXIT") . $method);
        }
    }

}
